namespace Apps.Models
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel.DataAnnotations.Schema;
    using System.Data.Entity.Spatial;

    [Table("PUB_MINE")]
    public partial class PUB_MINE
    {
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
        public PUB_MINE()
        {
            CONTRACT_DETAIL = new HashSet<CONTRACT_DETAIL>();
            PL_RC_DETAILS = new HashSet<PL_RC_DETAILS>();
            PL_RC_TRANSPORT = new HashSet<PL_RC_TRANSPORT>();
            PLAN_PURCHASE_DETAIL = new HashSet<PLAN_PURCHASE_DETAIL>();
            PLAN_TEMPPURCHASEDETAIL = new HashSet<PLAN_TEMPPURCHASEDETAIL>();
            RC_PROCESS = new HashSet<RC_PROCESS>();
        }

        [Key]
        [StringLength(40)]
        public string MINE_ID { get; set; }

        [Required]
        [StringLength(50)]
        public string MINE_NAME { get; set; }

        [StringLength(20)]
        public string KKSCODE { get; set; }

        [StringLength(200)]
        public string REMARKS { get; set; }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<CONTRACT_DETAIL> CONTRACT_DETAIL { get; set; }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<PL_RC_DETAILS> PL_RC_DETAILS { get; set; }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<PL_RC_TRANSPORT> PL_RC_TRANSPORT { get; set; }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<PLAN_PURCHASE_DETAIL> PLAN_PURCHASE_DETAIL { get; set; }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<PLAN_TEMPPURCHASEDETAIL> PLAN_TEMPPURCHASEDETAIL { get; set; }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<RC_PROCESS> RC_PROCESS { get; set; }
    }
}
